package lt.ntec.danblog.server.core.model;

import java.util.Map;
import java.util.Set;
import java.util.SortedSet;

public interface TagDAO extends BaseDAO<Tag> {

    Tag getTagByValue(String value);

    void deleteParentFromTags(Taggable entity);

    SortedSet<? extends Tag> getTagsByParent(Taggable entity);

    Tag saveUniqueTag(Tag entity);

    Map<String, Set<Long>> getParentsByTagId(Long id);

    Set<Taggable> getParentsByTag(Tag get);
}
